/**
 * 版权所有(C)，上海勾芒信息科技，2017，所有权利保留。
 * 
 * 项目名：	cards-web
 * 文件名：	WxMessageHandler.java
 * 模块说明：	
 * 修改历史：
 * 2017年5月31日 - Debenson - 创建。
 */
package me.chanjar.weixin.message.rule;

import java.util.Map;

import me.chanjar.weixin.common.exception.WxErrorException;
import me.chanjar.weixin.message.bean.WxXmlMessage;

/**
 * 处理微信推送消息的处理器接口
 * 
 * @author Debenson
 * @since 0.1
 */
public interface WxMessageHandler {

  /**
   * 处理消息
   * 
   * @param wxMessage
   * @param context
   *          上下文，如果handler或interceptor之间有信息要传递，可以用这个
   * @return xml格式的消息，如果在异步规则里处理的话，可以返回null。如果同一个消息有多个处理器， 将以最后一个处理器的返回值为准。
   */
  String handle(WxXmlMessage wxMessage, Map<String, Object> context) throws WxErrorException;

}
